Adaptive Non-linear Pattern Matching Automata

نویسندگان

چکیده

Efficient pattern matching is fundamental for practical term rewrite engines. By preprocessing the given patterns into a finite deterministic automaton can be decided in single traversal of relevant parts input term. Most automaton-based techniques are restricted to linear patterns, where each variable occurs at most once, and require an additional post-processing step check so-called consistency. However, we show that interleaving consistency phases reduce number required steps find all matches. Therefore, take existing adaptive automata as introduced by Sekar et al extend these with checks. We prove resulting correct, several examples some reduction achieved.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Evaluating Linear XPath Expressions by Pattern-Matching Automata

We consider the problem of efficiently evaluating a large number of XPath expressions, especially in the case when they define subscriber profiles for filtering of XML documents. For each document in an XML document stream, the task is to determine those profiles that match the document. In this article we present a new general method for filtering with profiles expressed by linear XPath expres...

متن کامل

Egison: Non-Linear Pattern-Matching against Non-Free Data Types

This paper introduces the Egison programming language whose feature is strong pattern-matching facility against not only algebraic data types but also non-free data types whose data have multiple ways of representation such as sets and graphs. Our language supports multiple occurrences of the same variables in a pattern, multiple results of pattern-matching, polymorphism of pattern-constructors...

متن کامل

Adaptive Pattern Matching

Pattern matching is an important operation used in many applications such as functional programming, rewriting and rule-based expert systems. By preprocessing the patterns into a DFA-like automaton, we can rapidly select the matching pattern(s) in a single scan of the relevant portions of the input term. This automaton is typically based on left-to-right traversal (of the patterns) or its varia...

متن کامل

Linear Pattern Matching Algorithms

In 1970, Knuth, Pratt, and Morris [1] showed how to do basic pattern matching in linear time. Related problems, such as those discussed in [4], have previously been solved by efficient but sub-optimal algorithms. In this paper, we introduce an interesting data structure called a bi-tree. A linear time algorithm "for obtaining a compacted version of a bi-tree associated with a given string is pr...

متن کامل

Optimal Left-to-Right Pattern-Matching Automata

We propose a practical technique to compile pattern-matching for prioritised overlapping patterns in equational languages into a minimal, deterministic, left-toright, matching automaton. First, we present a method for constructing a tree matching automaton for such patterns. This allows pattern-matching to be performed without any backtracking. Space requirements are reduced by using a directed...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Logical Methods in Computer Science

سال: 2021

ISSN: ['1860-5974']

DOI: https://doi.org/10.46298/lmcs-17(4:21)2021